<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        //var let声明的是变量  const声明的是常量
        //  var name = 'Cai';
        //  let age = 19;
        //  const sex = 'Female';
        //console.log(name, age, sex);

        //  name = "Lily";
        //  age = 9;
        //const一旦初始化之后就不能重新赋值了
        // sex = "Male"; //报错
        //console.log(name, age, Male);

        //var let 声明的就是变量 变量一旦初始化之后 还可以重新复习
        //const声明的就是常量 常量一旦初始化之后 就不能重新赋值了，否则就会报错


        //const  就是为了那些一旦初始化就不希望被重新赋值的情况下设计的
        //const 的注意事项
        //使用const声明常量 一旦声明 就必须立即初始化不能留到以后赋值
        //const sex;
        //sex = 'male'

        //声明加初始化一气呵成
        //  const sex = "male";
        //const声明的常量允许在不重新赋值的情况下修改它的值
        //基本数据类型
        // const name = "Cai";
        // name = "Lily";
        // console.log(name); //报错

        //引用数据类型
        const person = {
            username: 'Lily'
        };
        person.username = "Cai";
        console.log(person);

        //什么时候使用const 什么时候使用let
        //  实践开发中的经验:不知道用什么就用const
        // 用了const如果要修改值后面会报错
    </script>
</body>

</html>